// if(!Array.prototype.forEach) {
//     Array.prototype.forEach = (fn, context) => {
//         var context = arguments[1];
//         if(typeof fn !== 'function') {
//             throw new TypeError(fn + 'is not a function')
//         }
//         for(let i = 0; i < this.length; i++) {
//             fn.call(context, this[i], i, this)
//         }   
//     }
// }

import { clone } from 'lodash'

const obj = {
  person: {
    name: 'lin'
  }
}

const newObj = clone(obj)
obj.person.name = 'xxx'    // 改变原来的对象

console.log('原来的对象', obj)
console.log('新的对象', newObj)

console.log('更深层的指向同一地址', obj.person == newObj.person)